package com.longcai.cm.service;

import com.longcai.cm.base.service.BaseServiceIface;
import com.longcai.cm.domain.JaMemberAsset;

import java.math.BigDecimal;

/**
 * @author LBX
 */
public interface JaMemberAssetService extends BaseServiceIface<JaMemberAsset> {

    /**
     * 新建账户
     *
     * @param memberId 用户 id
     * @return 账户信息
     */
    JaMemberAsset createAccount(String memberId);

    /**
     * 根据用户id查询账户
     *
     * @param memberId 用户id
     * @return 账户信息
     */
    JaMemberAsset getMemberAsset(String memberId);

    /**
     * 更新账户 积分信息
     *
     * @param memberId 用户id
     * @param assets   变动量
     * @param type     变动类型( 0: 减少 1:增加  )
     * @param describe 变动描述
     */
    void updateMemberAssetIntegral(String memberId, BigDecimal assets, int type, String describe);

    /**
     * 移除相关订单的积分记录
     *
     * @param orderNum 订单号
     */
    void removeRecord(String orderNum);

}